package to.pm.acquisti.ejb;

import java.util.Collection;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import to.pm.acquisti.core.GestioneFornitore;
import to.pm.entity.acquisti.Fornitore;
import to.pm.entity.acquisti.OrdineEsterno;


@Stateless
public class FornitoreBean 
        implements  to.pm.acquisti.bi.GestioneFornitoreBusiness {

    private EntityManager em;

    private GestioneFornitore fornitore = new GestioneFornitore();

    
    public Fornitore createFornitore(Fornitore f) {
        return fornitore.addFornitore(f);
    }

    public Fornitore findById(long id) {
        return em.find(Fornitore.class, id);
    }

    public List<OrdineEsterno> getOrdiniInRicezione(Fornitore f) {
        f = em.getReference(Fornitore.class, f.getId());
        return f.getOrdiniInRicezione();
    }

    @PersistenceContext
    public void setEm(EntityManager em){
        this.em = em;
        fornitore.setEm(em);
    }

    public Collection<Fornitore> findAll() {
        return em.createQuery("select object(f) from Fornitore as f").getResultList();
    }


}
